home *** CD-ROM | disk | FTP | other *** search
/ NASA Climatology Interdisciplinary Data Collection / NASA Climatology Interdisciplinary Data Collection - Disc 4.iso / software / grads / lib / clhilo.gs < prev    next >
Text File  |  1998-04-23  |  2KB  |  71 lines

  1. function clhilo(args)
  2. *
  3. *    plot H/L using Steve Lords' algorithm
  4. *
  5.   var=subwrd(args,1)
  6.   maxmin=subwrd(args,2)
  7.   fmt=subwrd(args,3)
  8.   cint=subwrd(args,4)
  9.   rad=subwrd(args,5)
  10.  
  11.   if(maxmin = "maxmin" | maxmin = "MAXMIN") ; mm=0.0 ; endif
  12.   if(maxmin = "max" | maxmin = "MAX") ; mm=1.0 ; endif
  13.   if(maxmin = "min" | maxmin = "MIN") ; mm=-1.0 ; endif
  14.  
  15.   if(fmt='') ; fmt=i5; endif
  16.   if(rad = ''); rad=500.0; endif
  17.  
  18.   if(cint = '-999' | cint = '') 
  19.     'set gxout stat'
  20.     'd 'var
  21.     dum=sublin(result,9)
  22.     say "dum="dum
  23.     cint=subwrd(dum,7)
  24.     say "cint set to "cint
  25.     'set gxout contour'
  26.   endif
  27.  
  28.   udfile='udf.clhilo.vals'
  29.   '!rm 'udfile
  30.   say "rad,cint="rad","cint
  31. *    call the udf to calc H/L
  32. *
  33.  'd clhilo('var','mm','rad','cint','fmt')'
  34. *
  35. *    plot the H/L
  36. *
  37.   while (1)
  38.     res=read(udfile)
  39.     rc=sublin(res,1)
  40.     if (rc != 0)
  41.       if(rc = 1); say "open error for file "udfile; return; endif
  42.       if(rc = 2); say "end of file for file "udfile; break; endif
  43.       if(rc = 9); say "I/O error for file "udfile; return; endif
  44.     endif
  45.     dum=sublin(res,2)
  46.     maxormin=subwrd(dum,1)
  47.     lon=subwrd(dum,2)
  48.     lat=subwrd(dum,3)
  49.     val=subwrd(dum,4)
  50.  
  51.     'q w2xy 'lon' 'lat
  52.     x=subwrd(result,3)
  53.     y=subwrd(result,6)
  54.     if(maxormin = "max"); str="H"; 'set string 4 c 6'; endif
  55.     if(maxormin = "min"); str="L"; 'set string 2 c 6'; endif
  56.     'set font 5'
  57.     'set strsiz 0.1'
  58.     'draw string 'x' 'y' 'str
  59.     'set font 0'
  60.     'set strsiz 0.05'
  61.     'set string 1 tc 6'
  62.     ytop=y-0.1
  63.     'draw string 'x' 'ytop' 'val
  64.     
  65.   endwhile
  66.   rc=close(udfile)
  67.   say "End of clhilo"
  68.  
  69. return
  70.